/**
 * 用户相关的API接口
 */
import request from "@/utils/request";

/**
 * 用户登录
 * @param {Object} data - 登录参数
 * @returns {Promise} - 请求结果
 */
export function login(data) {
  return request({
    url: "/api/admin/login",
    method: "post",
    data,
  });
}

/**
 * 用户登出
 * @returns {Promise} - 请求结果
 */
export function logout() {
  return request({
    url: "/api/admin/logout",
    method: "post",
  });
}

/**
 * 获取用户信息
 * @returns {Promise} - 请求结果
 */
export function getUserInfo() {
  return request({
    url: "/api/admin/info",
    method: "get",
  });
}

/**
 * 修改用户密码
 * @param {Object} data - 密码修改参数
 * @returns {Promise} - 请求结果
 */
export function changePassword(data) {
  return request({
    url: "/api/user/change-password",
    method: "post",
    data,
  });
}

/**
 * 获取用户列表
 * @param {Object} params - 查询参数
 * @returns {Promise} - 请求结果
 */
export function getUserList(params) {
  return request({
    url: "/api/user/list",
    method: "get",
    params,
  });
}

/**
 * 创建用户
 * @param {Object} data - 用户数据
 * @returns {Promise} - 请求结果
 */
export function createUser(data) {
  return request({
    url: "/api/user",
    method: "post",
    data,
  });
}

/**
 * 更新用户
 * @param {String} id - 用户ID
 * @param {Object} data - 用户数据
 * @returns {Promise} - 请求结果
 */
export function updateUser(id, data) {
  return request({
    url: `/api/user/${id}`,
    method: "put",
    data,
  });
}

/**
 * 删除用户
 * @param {String} id - 用户ID
 * @returns {Promise} - 请求结果
 */
export function deleteUser(id) {
  return request({
    url: `/api/user/${id}`,
    method: "delete",
  });
}

/**
 * 获取用户详情
 * @param {String} id - 用户ID
 * @returns {Promise} - 请求结果
 */
export function getUserDetail(id) {
  return request({
    url: `/api/user/${id}`,
    method: "get",
  });
}
